package com.qf.mybatis01.utils;

import cn.hutool.core.io.file.FileAppender;
import com.qf.mybatis01.entity.Book;

import java.io.File;
import java.util.List;

public class BookWriter {

    // 该对象关联的 文件的路径
    private String filepath;

    public BookWriter(String filepath) {
        this.filepath = filepath;
    }


    /**
     * 将 List<Book> 已追加的方式写入 filepath 对应的文本文件中
     * 注意：生成的文本文件的格式为  csv  （逗号分隔的文本文件 ）
     *
     * 0ko1r3qshjqxokjtaw3z,8p8lotxmk9,9p7gaosed35ova7phi3pn9udm,529366
     * 0ko1r3qshjqxokjtaw1z,8p8lotxmk2,9p7gaosed35ova7phi3pn9udm,529344
     * 0ko1r3qshjqxokjtaw2z,8p8lotxmk1,9p7gaosed35ova7phi3pn9udm,529111
     *
     * @param books
     */
    public void writeBooksToFile(List<Book> books){
        FileAppender appender = new FileAppender(new File(filepath), 16, true);
        for (Book book : books) {
            // 类型转换： book ----> String
            final String csv = book.toCSVString();
            // 追加内容到 文本文件

            appender.append(csv);

        }
        appender.flush();
    }
}
